Remove Duplicates from Sorted Array
Leetcode #26 | Easy | Указатель на запись
Идея
Заводим указатель на запись write а проходим i, начиная сi=1. Если nums[i]!=nums[i-1]то это уникальное число nums[write++]=nums[i]. В конце возвращаем write.
Big-O
- Время
O(N) - Память
O(1)
Код
class Solution {
public int removeDuplicates(int[] nums) {
if (nums.length == 0) return 0;
int write = 1;
for (int i = 1; i < nums.length; i++) {
if (nums[i] != nums[i - 1]) nums[write++] = nums[i];
}
return write;
}
}